package com.wicket.okrcalc.biz.service.dto.req;

import com.wicket.okrcalc.biz.service.dto.common.TargetBelongCycleDto;
import com.wicket.okrcalc.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.validation.constraints.NotNull;
import lombok.Data;

/**
 * @desc ImplementLoopCalcCyclesStandardDataComReqDto
 * @使用场景
 */
@Data
public class ImplementLoopCalcCyclesStandardDataComReqDto
  extends BaseDto
  implements Serializable {

  /**
   * 事务内数据更新批次标识
   */
  @NotNull(message = "事务内数据更新批次标识不能为空")
  @ApiModelProperty("事务内数据更新批次标识")
  private String eventBatchUpdateCode;

  /**
   * 计算开始时间
   */
  @NotNull(message = "计算开始时间不能为空")
  @ApiModelProperty("计算开始时间")
  private Date calcStartTime;

  /**
   * 目标得分单位
   */
  @NotNull(message = "目标得分单位不能为空")
  @ApiModelProperty("目标得分单位")
  private String targetScoreUnit;

  @ApiModelProperty("目标归属周期列表")
  private List<TargetBelongCycleDto> targetBelongCycleList = new ArrayList<>();

}
